﻿using System;

namespace SharpSqlAnalyzer.nodes
{
	// Token: 0x0200029D RID: 669
	public class TContainsTable : TParseTreeNode
	{
		// Token: 0x17000420 RID: 1056
		// (get) Token: 0x060015D2 RID: 5586 RVA: 0x0032681E File Offset: 0x00324A1E
		// (set) Token: 0x060015D1 RID: 5585 RVA: 0x00326815 File Offset: 0x00324A15
		public virtual int Type
		{
			get
			{
				return this._type;
			}
			set
			{
				this._type = value;
			}
		}

		// Token: 0x17000421 RID: 1057
		// (get) Token: 0x060015D3 RID: 5587 RVA: 0x00326826 File Offset: 0x00324A26
		// (set) Token: 0x060015D4 RID: 5588 RVA: 0x0032682E File Offset: 0x00324A2E
		public virtual TExpression ColumnReferences
		{
			get
			{
				return this._columnReferences;
			}
			set
			{
				this._columnReferences = value;
			}
		}

		// Token: 0x17000422 RID: 1058
		// (get) Token: 0x060015D5 RID: 5589 RVA: 0x00326837 File Offset: 0x00324A37
		// (set) Token: 0x060015D6 RID: 5590 RVA: 0x0032683F File Offset: 0x00324A3F
		[Obsolete("use ColumnReferences instead")]
		public virtual TInExpr Column_or_columnList
		{
			get
			{
				return this._column_or_columnList;
			}
			set
			{
				this._column_or_columnList = value;
			}
		}

		// Token: 0x17000423 RID: 1059
		// (get) Token: 0x060015D7 RID: 5591 RVA: 0x00326848 File Offset: 0x00324A48
		// (set) Token: 0x060015D8 RID: 5592 RVA: 0x00326850 File Offset: 0x00324A50
		public virtual TExpression Contains_search_condition
		{
			get
			{
				return this._contains_search_condition;
			}
			set
			{
				this._contains_search_condition = value;
			}
		}

		// Token: 0x17000424 RID: 1060
		// (get) Token: 0x060015D9 RID: 5593 RVA: 0x00326859 File Offset: 0x00324A59
		// (set) Token: 0x060015DA RID: 5594 RVA: 0x00326861 File Offset: 0x00324A61
		public virtual TObjectName TableName
		{
			get
			{
				return this._tableName;
			}
			set
			{
				this._tableName = value;
			}
		}

		// Token: 0x060015DB RID: 5595 RVA: 0x0032686A File Offset: 0x00324A6A
		public override void init(object arg1, object arg2, object arg3)
		{
			this._tableName = (TObjectName)arg1;
			this._columnReferences = (TExpression)arg2;
			this._contains_search_condition = (TExpression)arg3;
		}

		// Token: 0x060015DC RID: 5596 RVA: 0x00326890 File Offset: 0x00324A90
		public override void doParse(TCustomSqlStatement psql, ESqlClause plocation)
		{
			this._columnReferences.doParse(psql, plocation);
			this._contains_search_condition.doParse(psql, plocation);
		}

		// Token: 0x060015DD RID: 5597 RVA: 0x003268AC File Offset: 0x00324AAC
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x060015DE RID: 5598 RVA: 0x003268BC File Offset: 0x00324ABC
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			this._columnReferences.acceptChildren(v);
			this._contains_search_condition.acceptChildren(v);
			v.postVisit(this);
		}

		// Token: 0x17000425 RID: 1061
		// (set) Token: 0x060015DF RID: 5599 RVA: 0x003268E4 File Offset: 0x00324AE4
		public virtual TConstant Top_n_by_rank
		{
			set
			{
				this._top_n_by_rank = value;
			}
		}

		// Token: 0x0400174F RID: 5967
		public const int containstable = 1;

		// Token: 0x04001750 RID: 5968
		public const int freetexttable = 2;

		// Token: 0x04001751 RID: 5969
		private int _type = 1;

		// Token: 0x04001752 RID: 5970
		private TObjectName _tableName;

		// Token: 0x04001753 RID: 5971
		private TInExpr _column_or_columnList;

		// Token: 0x04001754 RID: 5972
		private TExpression _contains_search_condition;

		// Token: 0x04001755 RID: 5973
		private TConstant _top_n_by_rank;

		// Token: 0x04001756 RID: 5974
		private TExpression _columnReferences;
	}
}
